package org.lg.vo;

import java.io.Serializable;
import java.util.Objects;

public abstract class Account implements Serializable {
    private String username;
    private String password;
    private String role;

    public Account() {
    }

    public abstract String getUsername();

    public abstract void setUsername(String username);

    public abstract String getPassword();

    public abstract void setPassword(String password);

    public abstract String getRole();

    public abstract void setRole(String role);

    @Override
    public String toString() {
        return "Accout{" +
                "username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", role='" + role + '\'' +
                '}';
    }



    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        Account accout = (Account) o;
        return Objects.equals(username, accout.username) &&
                Objects.equals(password, accout.password) &&
                Objects.equals(role, accout.role);
    }

    @Override
    public int hashCode() {
        return Objects.hash(username, password, role);
    }
}
